1. Field of the Invention
The present invention is in the field of automated business and workflow management systems and pertains particularly to methods and apparatus for assembling a business process and dynamically integrating the process to business process resources and fulfillment services.
2. Discussion of the State of the Art
In the field of business process management, there are automated business processes that are executable and, in some cases, navigable by a process beneficiary, which may be a customer engaging the process through a customer contact interface of some kind. In the field of telephony communications, a customer interactive interface such as an interactive voice response system (IVR) might be used to interact with a customer using a voice application. A customer that has contacted the business via a telephone, for example, can navigate through one or more branches of a business process by selection, made by voice confirmation in many cases to voice prompted options presented to the customer through the voice application.
Much information on business process and workflow management can be found at the following Internet site references including the Business Process Management Initiative at www.bpmi.org; the OASIS Business Process Execution Language (BPEL) site at www.oasis-open.org; Workflow & BPM Research www.workflow-research.de; and the Workflow Management Coalition http://www.wfmc.org/.
A voice application may be used as a customer interfacing application that causes one or more business processes or process branches to occur based on customer input obtained during navigation of the application. A Web-based customer interface engine may also be used to interact with a customer through a Web page enabling the customer to initiate one or more processes or to navigate through two or more process branches depending upon input submitted by the customer.
If a process is enabled by a voice application, the customer may navigate the process by voice input using a specific vocabulary recognized by the voice application. If the process is Web-based, the customer may use text input and/or interactive selection to navigate the process. Other input methods can be used to navigate a business process like touch tone input for some IVR applications.
In many cases, the dynamic principles of an automated business process comprise the enablement of the customer to navigate various portions of the process to some end result such as a transaction, an order status report, or some other goal of a process branch. The customer can exit a process and begin again, follow a process branch to completion, move from one process branch to another, skip portions of the process and so on. Individual process step transitions and branch jump-off points may be input or result driven. Flexibility of the process is limited to pre-definition and process recognition of the process transition results and or process beneficiary input. One of the challenges in the industry is that, unlike internal-only processes such as manufacturing, customer service and sales processes involve customers, who are not agents of the enterprise and who likely will not feel bound in any way to follow established processes. Thus customer-interfacing business processes tend to be much more highly dynamic than the processes around which business process management techniques known in the art were developed.
In the case of a customer-driven business process, the customer ultimately is the process beneficiary regardless of the exact process contexts involved or whether the entire process is managed in one location. In traditional business process management systems the processes are pre-defined and orchestrated into hierarchal business steps, some of which depend on a previous result for execution and completion. All of the created process branches that may be classed in many cases as separate processes are static and can only be executed and navigated according to programmed design (process path). For example, if a customer wants to check the balance of her checking account at a bank using a telephone interface, the customer may have to navigate to that business process option or branch from the voice application interface or options menu. The customer may be required to listen to a host other options before the desired option is presented. Once on the right branch, the customer may have to listen to additional options for checking the balance of a savings account and an investment account before being able to select the option for checking balance.
The process described above although dynamically navigable through process branching from a start point or customer interface, is static in that it comprises certain pre-designed processes architected as a series of required steps. In order for the customer to initiate another process on the same telephone call, the customer may have to exit the process and start again at the beginning of the menu options. These types of processes may be thought of as “hard” business processes meaning that they are a pre-programmed series of steps that together complete some automated or semi-automated process. Navigating through an automated business process requires certain input or process results at certain points in the process.
A problem with the current business process presentation and navigation is that many customers become dissatisfied with a business process and many times quit the process before a transaction or other process goal is achieved. Process optimization focuses on fluidity of the process and the ability to navigate easily between various process branches. Often, when a customer contacts a business, they have more than one goal in mind, and each requires servicing. In some cases information about the customer can indicate that more than one process should be presented to the customer. Often treating the customer with a hard automated business process does not satisfy all of the needs of the customer at the time.
Some automated or semi-automated processes are performed in portions of one or more steps by different entities. One example might be the process of being able to use a new credit card. If one looks at a complete process from the point of application creation and approval to credit card shipment, receipt and activation, it is clear that more than one sub-process is involved in the overall process and different entities may be involved in enabling the different sub-processes. From a business standpoint the “experience” of getting credit is not thought of as a single overall process, but as a compilation of unrelated processes that all must be completed before the consumer can make a credit purchase.
Still other types of processes have process beneficiaries that are businesses or groups of users rather than single customers. An automated supply chain might represent such as process where the primary beneficiary is a business customer. Many of these processes are wholly automated and may comprise many sub-processes before the end result is realized. Where the process is automated, it requires some human intervention to change or modify the process. Like automated business-to-customer (B2C) processes, business-to-business (B2B) processes typically follow a specific pre-architected design that is result or input driven.
In most business processes navigated by customers, there is some event routing strategy that has to be defined and that is integral to the process. Many times automated routing routines are fixed sub-processes of the overall business process. In processes containing one or more required interactions, businesses can suffer bottlenecks if live or automated resources are not sufficient to handle all of the events resulting from process interaction.
It has occurred to the inventor that customers and business clients often have their own ideas and preferences relating to how they want to be serviced. Therefore, what is clearly needed in the art is a system and methods for dynamic assembly of business processes based on real customer need at the time of servicing and wherein process to resource integration is more flexible. A system such as this would improve customer experience and reduce unnecessary overhead related to servicing customers.